/*
 * @lc app=leetcode.cn id=234 lang=cpp
 *
 * [234] 回文链表
 */

// @lc code=start



#include <bits/stdc++.h>
using namespace std;

// struct ListNode {
//     int val;
//     ListNode *next;
//     ListNode() : val(0), next(nullptr) {}
//     ListNode(int x) : val(x), next(nullptr) {}
//     ListNode(int x, ListNode *next) : val(x), next(next) {}
// };

class Solution {
public:
    bool isPalindrome(ListNode* head) {
        vector<int> v;
        for(ListNode* p = head; p != nullptr; p = p->next)
        {
            v.push_back(p->val);
        }

        auto b = v.begin();
        auto e = v.end() - 1;
        while(b < e)
        {
            if(*b != *e) return false;
            b++;
            e--;
        }
        return true;
    }
};
// @lc code=end

